/* DataPlexus 组件主题适配样式 */

/* ========== 头像组件主题适配 ========== */

/* 浅色主题 - 极简现代 */
[data-theme="light"] .ant-avatar {
  background-color: #ffffff !important;
  color: #007AFF !important;
  border: 2px solid rgba(0, 122, 255, 0.1) !important;
  box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.12) !important;
}

[data-theme="light"] .ant-avatar-circle {
  border-radius: 50% !important;
}

[data-theme="light"] .ant-avatar-icon {
  color: #007AFF !important;
  font-size: 16px !important;
}

/* 深色主题 - 专业深色 */
[data-theme="dark"] .ant-avatar {
  background-color: rgba(30, 41, 59, 0.8) !important;
  color: #93c5fd !important;
  border: 2px solid rgba(59, 130, 246, 0.3) !important;
  box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.3) !important;
}

[data-theme="dark"] .ant-avatar-icon {
  color: #93c5fd !important;
}

/* 新拟物主题 - 立体质感（色彩增强版） */
[data-theme="purple"] .ant-avatar {
  background: linear-gradient(135deg, #fefbff 0%, #f8fafc 50%, #f1f5f9 100%) !important;
  color: #5b21b6 !important;
  border: 1px solid rgba(139, 92, 246, 0.08) !important;
  box-shadow: 3px 3px 6px rgba(139, 92, 246, 0.06), -3px -3px 6px #ffffff,
              inset 0 0 0 1px rgba(255, 255, 255, 0.9) !important;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
  position: relative !important;
  overflow: hidden !important;
  font-weight: 600 !important;
}

[data-theme="purple"] .ant-avatar:hover {
  box-shadow: 5px 5px 10px rgba(139, 92, 246, 0.08), -5px -5px 10px #ffffff,
              inset 0 0 0 1px rgba(255, 255, 255, 0.95),
              0 0 0 2px rgba(91, 33, 182, 0.1) !important;
  transform: translateY(-1px) !important;
  border-color: rgba(139, 92, 246, 0.15) !important;
}

/* 彩色头像样式 */
[data-theme="purple"] .ant-avatar[style*="background-color: rgb(99, 102, 241)"],
[data-theme="purple"] .ant-avatar[style*="background-color: #6366f1"] {
  background: linear-gradient(135deg, #5b21b6 0%, #7c3aed 50%, #8b5cf6 100%) !important;
  color: #ffffff !important;
  border: 1px solid rgba(91, 33, 182, 0.2) !important;
  box-shadow: 3px 3px 6px rgba(91, 33, 182, 0.15), -3px -3px 6px #ffffff !important;
}

[data-theme="purple"] .ant-avatar[style*="background-color: rgb(16, 185, 129)"],
[data-theme="purple"] .ant-avatar[style*="background-color: #10b981"] {
  background: linear-gradient(135deg, #059669 0%, #10b981 50%, #34d399 100%) !important;
  color: #ffffff !important;
  border: 1px solid rgba(5, 150, 105, 0.2) !important;
  box-shadow: 3px 3px 6px rgba(5, 150, 105, 0.15), -3px -3px 6px #ffffff !important;
}

[data-theme="purple"] .ant-avatar[style*="background-color: rgb(245, 158, 11)"],
[data-theme="purple"] .ant-avatar[style*="background-color: #f59e0b"] {
  background: linear-gradient(135deg, #d97706 0%, #f59e0b 50%, #fbbf24 100%) !important;
  color: #ffffff !important;
  border: 1px solid rgba(217, 119, 6, 0.2) !important;
  box-shadow: 3px 3px 6px rgba(217, 119, 6, 0.15), -3px -3px 6px #ffffff !important;
}

/* 头像背景装饰 */
[data-theme="purple"] .ant-avatar::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  background: linear-gradient(135deg,
    rgba(91, 33, 182, 0.05) 0%,
    rgba(124, 58, 237, 0.03) 50%,
    rgba(255, 255, 255, 0.1) 100%) !important;
  opacity: 0 !important;
  transition: opacity 0.3s ease !important;
  pointer-events: none !important;
}

[data-theme="purple"] .ant-avatar:hover::before {
  opacity: 1 !important;
}

/* 头像组样式 */
[data-theme="purple"] .ant-avatar-group .ant-avatar {
  border: 2px solid #ffffff !important;
  margin-left: -8px !important;
}

[data-theme="purple"] .ant-avatar-group .ant-avatar:first-child {
  margin-left: 0 !important;
}

/* 自然绿主题 - 清新自然 */
[data-theme="green"] .ant-avatar {
  background-color: #ffffff !important;
  color: #059669 !important;
  border: 2px solid rgba(5, 150, 105, 0.2) !important;
  box-shadow: 0 2px 4px 0 rgba(5, 150, 105, 0.1) !important;
}

/* 科技蓝主题 - 未来科技 */
[data-theme="tech"] .ant-avatar {
  background: linear-gradient(135deg, rgba(14, 165, 233, 0.2) 0%, rgba(59, 130, 246, 0.2) 100%) !important;
  color: #0ea5e9 !important;
  border: 2px solid rgba(14, 165, 233, 0.5) !important;
  box-shadow: 0 0 15px rgba(14, 165, 233, 0.3) !important;
}

/* ========== 进度条组件主题适配 ========== */

/* 浅色主题进度条 */
[data-theme="light"] .ant-progress-text {
  color: #000000 !important;
  font-weight: 500 !important;
}

[data-theme="light"] .ant-progress-inner {
  background-color: #f2f2f7 !important;
  border-radius: 12px !important;
}

[data-theme="light"] .ant-progress-bg {
  background: linear-gradient(135deg, #007AFF 0%, #5AC8FA 100%) !important;
  border-radius: 12px !important;
}

/* 深色主题进度条 */
[data-theme="dark"] .ant-progress-text {
  color: #f1f5f9 !important;
  font-weight: 500 !important;
}

[data-theme="dark"] .ant-progress-inner {
  background-color: rgba(51, 65, 85, 0.5) !important;
  border-radius: 8px !important;
}

[data-theme="dark"] .ant-progress-bg {
  background: linear-gradient(135deg, #3b82f6 0%, #6366f1 100%) !important;
  border-radius: 8px !important;
}

/* 新拟物主题进度条（色彩增强版） */
[data-theme="purple"] .ant-progress-inner {
  background: linear-gradient(135deg, #e2e8f0 0%, #f1f5f9 50%, #faf5ff 100%) !important;
  border-radius: 20px !important;
  border: 1px solid rgba(139, 92, 246, 0.08) !important;
  box-shadow: inset 3px 3px 6px rgba(139, 92, 246, 0.06), inset -3px -3px 6px #ffffff,
              0 0 0 1px rgba(255, 255, 255, 0.9) !important;
  position: relative !important;
  overflow: hidden !important;
}

/* 进度条背景装饰 */
[data-theme="purple"] .ant-progress-inner::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  background: linear-gradient(90deg,
    rgba(91, 33, 182, 0.02) 0%,
    rgba(255, 255, 255, 0.05) 50%,
    rgba(139, 92, 246, 0.02) 100%) !important;
  pointer-events: none !important;
}

[data-theme="purple"] .ant-progress-bg {
  background: linear-gradient(135deg, #5b21b6 0%, #7c3aed 25%, #8b5cf6 50%, #a855f7 75%, #c084fc 100%) !important;
  border-radius: 20px !important;
  border: 1px solid rgba(91, 33, 182, 0.2) !important;
  box-shadow: 1px 1px 2px rgba(139, 92, 246, 0.08), -1px -1px 2px #ffffff,
              inset 0 0 0 1px rgba(255, 255, 255, 0.4),
              0 0 4px rgba(91, 33, 182, 0.1) !important;
  position: relative !important;
  overflow: hidden !important;
}

/* 进度条高光效果 */
[data-theme="purple"] .ant-progress-bg::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 50% !important;
  background: linear-gradient(90deg,
    rgba(255, 255, 255, 0.4) 0%,
    rgba(255, 255, 255, 0.2) 50%,
    rgba(255, 255, 255, 0.1) 100%) !important;
  pointer-events: none !important;
}

/* 进度条动画效果 */
[data-theme="purple"] .ant-progress-bg::after {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: -100% !important;
  width: 100% !important;
  height: 100% !important;
  background: linear-gradient(90deg,
    transparent 0%,
    rgba(255, 255, 255, 0.3) 50%,
    transparent 100%) !important;
  animation: progress-shine 2s infinite !important;
}

@keyframes progress-shine {
  0% { left: -100%; }
  100% { left: 100%; }
}

[data-theme="purple"] .ant-progress-text {
  color: #0f172a !important;
  font-weight: 600 !important;
  text-shadow: 0 1px 2px rgba(255, 255, 255, 0.8) !important;
}

/* 不同状态的进度条颜色 */
[data-theme="purple"] .ant-progress-status-success .ant-progress-bg {
  background: linear-gradient(135deg, #059669 0%, #10b981 50%, #34d399 100%) !important;
}

[data-theme="purple"] .ant-progress-status-exception .ant-progress-bg {
  background: linear-gradient(135deg, #dc2626 0%, #ef4444 50%, #f87171 100%) !important;
}

[data-theme="purple"] .ant-progress-status-active .ant-progress-bg {
  background: linear-gradient(135deg, #5b21b6 0%, #7c3aed 25%, #8b5cf6 50%, #a855f7 75%, #c084fc 100%) !important;
  animation: progress-active 2s ease-in-out infinite !important;
}

@keyframes progress-active {
  0%, 100% { opacity: 1; }
  50% { opacity: 0.8; }
}

/* 自然绿主题进度条 */
[data-theme="green"] .ant-progress-text {
  color: #064e3b !important;
  font-weight: 500 !important;
}

[data-theme="green"] .ant-progress-bg {
  background: linear-gradient(135deg, #10b981 0%, #059669 100%) !important;
  border-radius: 8px !important;
}

/* 科技蓝主题进度条 */
[data-theme="tech"] .ant-progress-bg {
  background: linear-gradient(90deg, #0ea5e9 0%, #3b82f6 50%, #6366f1 100%) !important;
  background-size: 200% 100% !important;
  box-shadow: 0 0 10px rgba(14, 165, 233, 0.5) !important;
  animation: progress-flow 2s linear infinite !important;
}

[data-theme="tech"] .ant-progress-text {
  color: #e2e8f0 !important;
  text-shadow: 0 0 5px rgba(14, 165, 233, 0.5) !important;
}

@keyframes progress-flow {
  0% { background-position: 0% 50%; }
  100% { background-position: 200% 50%; }
}

/* ========== 分页组件主题适配 ========== */

/* 浅色主题分页 */
[data-theme="light"] .ant-pagination-item {
  background-color: #ffffff !important;
  border: 1px solid #e5e5ea !important;
  border-radius: 12px !important;
}

[data-theme="light"] .ant-pagination-item a {
  color: #000000 !important;
}

[data-theme="light"] .ant-pagination-item:hover {
  border-color: #007AFF !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 4px 6px -1px rgba(0, 122, 255, 0.1) !important;
}

[data-theme="light"] .ant-pagination-item-active {
  background: linear-gradient(135deg, #007AFF 0%, #5AC8FA 100%) !important;
  border-color: #007AFF !important;
}

[data-theme="light"] .ant-pagination-item-active a {
  color: #ffffff !important;
}

/* 深色主题分页 */
[data-theme="dark"] .ant-pagination-item {
  background: rgba(30, 41, 59, 0.8) !important;
  border: 1px solid rgba(51, 65, 85, 0.8) !important;
  border-radius: 8px !important;
}

[data-theme="dark"] .ant-pagination-item a {
  color: #f1f5f9 !important;
}

[data-theme="dark"] .ant-pagination-item:hover {
  border-color: rgba(59, 130, 246, 0.5) !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 4px 6px -1px rgba(59, 130, 246, 0.2) !important;
}

[data-theme="dark"] .ant-pagination-item-active {
  background: linear-gradient(135deg, rgba(59, 130, 246, 0.3) 0%, rgba(99, 102, 241, 0.3) 100%) !important;
  border-color: rgba(59, 130, 246, 0.5) !important;
}

[data-theme="dark"] .ant-pagination-item-active a {
  color: #93c5fd !important;
}

/* 新拟物主题分页 */
[data-theme="purple"] .ant-pagination-item {
  background: #f1f5f9 !important;
  border: none !important;
  border-radius: 20px !important;
  box-shadow: 2px 2px 4px #d1d9e6, -2px -2px 4px #ffffff !important;
}

[data-theme="purple"] .ant-pagination-item:hover {
  box-shadow: 4px 4px 8px #d1d9e6, -4px -4px 8px #ffffff !important;
  transform: translateY(-1px) !important;
}

[data-theme="purple"] .ant-pagination-item-active {
  background: #6366f1 !important;
  box-shadow: inset 2px 2px 4px #d1d9e6, inset -2px -2px 4px #ffffff !important;
}

[data-theme="purple"] .ant-pagination-item-active a {
  color: #ffffff !important;
}

/* 自然绿主题分页 */
[data-theme="green"] .ant-pagination-item {
  background-color: #ffffff !important;
  border: 1px solid #dcfce7 !important;
  border-radius: 8px !important;
}

[data-theme="green"] .ant-pagination-item:hover {
  border-color: #059669 !important;
  box-shadow: 0 2px 4px -1px rgba(5, 150, 105, 0.1) !important;
}

[data-theme="green"] .ant-pagination-item-active {
  background: linear-gradient(135deg, #10b981 0%, #059669 100%) !important;
  border-color: #059669 !important;
}

/* 科技蓝主题分页 */
[data-theme="tech"] .ant-pagination-item {
  background: rgba(15, 20, 25, 0.8) !important;
  border: 1px solid rgba(14, 165, 233, 0.3) !important;
  border-radius: 4px !important;
  box-shadow: 0 0 5px rgba(14, 165, 233, 0.2) !important;
}

[data-theme="tech"] .ant-pagination-item:hover {
  border-color: rgba(14, 165, 233, 0.6) !important;
  box-shadow: 0 0 10px rgba(14, 165, 233, 0.4) !important;
  transform: translateY(-1px) !important;
}

[data-theme="tech"] .ant-pagination-item-active {
  background: linear-gradient(135deg, rgba(14, 165, 233, 0.3) 0%, rgba(59, 130, 246, 0.3) 100%) !important;
  border-color: #0ea5e9 !important;
  box-shadow: 0 0 15px rgba(14, 165, 233, 0.5) !important;
}

/* ========== Logo组件主题适配 ========== */

.logo {
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
  user-select: none !important;
}

.logo:hover {
  transform: scale(1.02) !important;
}

/* 深色主题Logo */
[data-theme="dark"] .logo,
[data-theme="tech"] .logo {
  color: #f1f5f9 !important;
}

[data-theme="tech"] .logo:hover {
  text-shadow: 0 0 10px rgba(14, 165, 233, 0.5) !important;
}

/* ========== 表格组件主题适配 ========== */

/* 表格行悬浮效果优化 - 避免滚动条 */
.ant-table-tbody > tr {
  transition: background-color 0.2s ease !important;
}

.ant-table-tbody > tr:hover > td {
  transform: none !important;
  scale: none !important;
}

/* 深色主题表格行悬浮 */
[data-theme="dark"] .ant-table-tbody > tr:hover > td,
[data-theme="tech"] .ant-table-tbody > tr:hover > td {
  background-color: rgba(59, 130, 246, 0.08) !important;
  transform: none !important;
}

/* 浅色主题表格行悬浮 */
[data-theme="light"] .ant-table-tbody > tr:hover > td {
  background-color: rgba(0, 122, 255, 0.05) !important;
}

[data-theme="green"] .ant-table-tbody > tr:hover > td {
  background-color: rgba(5, 150, 105, 0.05) !important;
}

[data-theme="purple"] .ant-table-tbody > tr:hover > td {
  background-color: rgba(99, 102, 241, 0.05) !important;
}
